DevOpsMemo
=Background= This page is created out of LearningLite. =Languages= ; Key words Compiled, interpreted, object orientated, functional Java Tbd Python Tbd Swift Refer to DevOpsMemo#iOS for development memo on platform of iPhone. Refer to visual studio code for swift on windows * Learning Swift Memo ** Swift Programming Language click * Json to swift online tool click =General Areas= SCM Branching Strategy * Gitflow - 2010 click * Gitflow - 2013 click * Gitflow is Considered Harmful - 2015 first-post follow-up PC * JVM Mobile * Appium a general mobile testing framework Android Instrumentation * Espresso ** Espresso click *** ViewMatchers click assertThat(String message, T actual, Matcher matcher) ** Espresso Advanced Samples click ** Android user interface testing with Espresso - Tutorial click ** Espresso + BDD *** epresso-cucumber click *** cucumber-jvm and android click * robolectric.org testing framework ** Robolectric lets you run your tests on your workstation, or on your Continuous Integration environment in a regular JVM, without an emulator. * Espresso, Mockito and Dagger dagger2 ** Fast and reliable UI tests on Android click ** Introduction to Automated Android Testing click Mock * mockito click RxJava * Going Reactive: An Architectural Journey click iOS * Install Mac OS Yosemite on PC unibeast yosemite-zone * How To Make An iPhone App - with Swift click * Develop iOS App with Swift click ; Where to Put Code click * Expect your app to be a sort of tree of references from the AppDelegate to one class instance (like a main UIViewController), which will have references to other class instances (like a UIView and other UIViewControllers), and so on * In a UIViewController, expect to do most of your setup in viewDidLoad * At first, you can probably do most of what you need to do without subclassing UIView at all, unless you need to use drawRect: or override other UIView methods, using a view instead of a view controller is mostly organizational * In a UIView, do most of your setup (i.e. creating subviews) in init (save drawRect: for actual drawing only) * If you're trying to create a more complex layout, don't forget about layoutSubviews for adjusting subview frames and so on * For now, bias to using properties instead of ivars, you can create a private @interface if you don't want to expose a property to other classes * Read the documentation for UIViewController's viewWillAppear, viewDidAppear, viewWillDisappear, and viewDidDisappear (all pretty succinct and once you start to do anything remotely complex you will need to override these methods) SCM Fastlane * Scan * Gym * Snapshot Gradle Not quite working for now. UI Programming * UIView - programming guide click * Implement a custom control click * iOS Basically: Reusable UIView part1 part2 * iOS – Developing reusable Views in a Swift Framework click UI Automation * UI Testing in Xcode - wwdc2015 click * UI Testing in Xcode 7 Part 1: UI Testing Gotchas * masilotti click * Accessibility click ** Do NOT set isAccessibilityElement=True to container view * XCUITest cheat-sheet click BDD on iOS * XCFit click * Fastlane Cucumberish click * Fitnesse Http Request * NSURLConnection click deprecated * USURLSession click * Alamofire click * With Swift NSURLSession click =Web and Service= JSON * Convert json and Java www.jsonschema2pojo.org =SCM= Gradle Tbd =Books= * 影印版 * weibo user collection ** it-ebooks-2016 click ** it-ebooks-2015 click ** it-ebooks-2014 click =Videos= * Standford 193P videos click objective-c * WWDC click =Hardwares= Keyboards * Tbd Desktops * Optiplex 790 / 990 click * HP Compaq 8000 / 8100 / 8200 Elite click * Lenovo ThinkCentre click =Appendix= Tbd